<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

require_once 'syncrolist.php';

class Actividades extends Syncrolist {

	public function index()
	{
		$this->browse();
	}

	public function browse()
    {   
        // Si el usuario no está loggeado lo redirijo al home
        $logueado = Usuario::getUsuarioLogueado();
        if (!$logueado->id) {
            redirect(base_url());
		}
        
        // Variables para la vista
        $data['usuario'] = new Usuario($logueado->id);
        $data['usuario']->actividad->get();
        $data['msg']     = new PwMsgHandler();
                
        // Cargo la vista
        $this->smartyview->render('actividad_browse.html',$data);
    }

    public function create()
    {
        // Si el usuario no está loggeado lo redirijo al home
        $logueado = Usuario::getUsuarioLogueado();
        if (!$logueado->id) {
            redirect(base_url());
        }

        if ($this->input->server('REQUEST_METHOD') === 'POST') {
            $usuario_id         = $this->input->post('usuario_id');
            $usuario            = new Usuario($usuario_id);
            $actividad          = new Actividad();
            $actividad->titulo  = $this->input->post('titulo');
            $actividad->detalle = $this->input->post('detalle');
            $actividad->fecha   = $this->input->post('fecha');
            $actividad->version = time();
            $actividad->save($usuario);

            $data['msg']          = new PwMsgHandler();
            $data['msg']->success = 'Actividad creada correctamente';
            $data['msg']->persistSuccess();

            redirect(base_url().'actividades/browse');
        }
        
        // Variables para la vista
        $data['usuario'] = new Usuario($logueado->id);
        $data['msg']     = new PwMsgHandler();
                
        // Cargo la vista
        $this->smartyview->render('actividad_create.html',$data);
    }
    
    public function read($id)
    {
        // Si el usuario no está loggeado lo redirijo al home
        $logueado = Usuario::getUsuarioLogueado();
        if (!$logueado->id) {
            redirect(base_url());
        }

        // Variables para la vista
        $data['usuario']    = new Usuario($logueado->id);
        $data['actividad']  = new Actividad($id);
        $data['msg']        = new PwMsgHandler();
                
        // Cargo la vista
        $this->smartyview->render('actividad_read.html',$data);
    }

    public function update($id)
    {
        // Si el usuario no está loggeado lo redirijo al home
        $logueado = Usuario::getUsuarioLogueado();
        if (!$logueado->id) {
            redirect(base_url());
        }

        if ($this->input->server('REQUEST_METHOD') === 'POST') {
            $actividad_id       = $this->input->post('actividad_id');
            $actividad          = new Actividad($actividad_id);
            $actividad->titulo  = $this->input->post('titulo');
            $actividad->detalle = $this->input->post('detalle');
            $actividad->fecha   = $this->input->post('fecha');
            $actividad->version = time();
            $actividad->save();

            $data['msg']          = new PwMsgHandler();
            $data['msg']->success = 'Actividad actualizada correctamente';
            $data['msg']->persistSuccess();

            redirect(base_url().'actividades/browse');
        }

        // Variables para la vista
        $data['usuario']   = new Usuario($logueado->id);
        $data['actividad'] = new Actividad($id);
        $data['msg']       = new PwMsgHandler();
                
        // Cargo la vista
        $this->smartyview->render('actividad_update.html',$data);
    }

    public function delete($id)
    {
        // Si el usuario no está loggeado lo redirijo al home
        $logueado = Usuario::getUsuarioLogueado();
        if (!$logueado->id) {
            redirect(base_url());
        }
        
        $actividad = new Actividad($id);
        if ($actividad->delete()) {
            $data['msg']          = new PwMsgHandler();
            $data['msg']->success = 'Actividad eliminada correctamente';
            $data['msg']->persistSuccess();

            redirect(base_url().'actividades/browse');
        }
    }

    public function __construct() {
        parent::__construct();
    } // __construct

} // class Actividades

/* End of file actividades.php */
/* Location: ./application/controllers/actividades.php */